Spusteni dotazu IBX

Otázka od: Pavel Karban

6. 4. 2004 10:15

Zdravim,

mam dotaz ohledne vytvoreni procedury na FireBirdu 1.5. Potrebuji
nahradit proceduru pri upgradu, mam upgradovaci skript, ve kterem
postupne dropnu stavajici proceduru, vytvorim prazdnou a nakonec ji
alternu. Kdyz pustim tento sled pres IBExpert, neni zadny problem. Ten
nestava pri spustneni pres IBX. Dotaz spoustim pres TIBQuery.

dropnuti procedury:
drop procedure nazev
--- probehne v poradku

vytvoreni prazdne procedury (kvuli zavislostem):
SET TERM ^ ;
CREATE PROCEDURE nazev (
    IN_TEXT VARCHAR(50))
RETURNS (
    ID INTEGER)
AS
BEGIN
  EXIT;
END^
--- probehne v poradku

zmena tela procedury:
SET TERM ^ ;
ALTER PROCEDURE nazev (
    IN_TEXT VARCHAR(50))
RETURNS (
    ID INTEGER)
AS
begin
  for select
    ID
  from tabulka
  order by ID
  into
    :ID
  do
    suspend;
end^
--- padne na radku zacinajici :ID, chyba neznamy token

Zajimalo by me, jestli to muze byt zpusobeno nekompatibilitou IBX vuci
FireBird 1.5. Nebo kde by mohla byt chyba.

Diky Pavel Karban

Odpovedá: petr palicka

6. 4. 2004 10:27

Ahoj,

   musis poustet postupne jeden dotaz za druhym.
samotna TIBSQL (TIBQUERY) neumi skript rozparsovat
na jednotlive prikazy. Nebo mrkni na TIBSCRIPT.
Ta by to mela umet.

Peca

Odpovedá: Pavel Karban

6. 4. 2004 11:04

Dotazy poustim postupne, v tom problem neni. TIBScript nikde nevidim,
ani v helpu na nej neni odkaz.
Mam vlastni parsovani (inspirovano ze zdrojaku GMarathonu), podle
oddelovacu, funguje dobre.
Neprojde akorat ten posledni dotaz (alter procedure).

P. Karban

petr palicka wrote:

>Ahoj,
>
> musis poustet postupne jeden dotaz za druhym.
>samotna TIBSQL (TIBQUERY) neumi skript rozparsovat
>na jednotlive prikazy. Nebo mrkni na TIBSCRIPT.
>Ta by to mela umet.
>
>Peca
>
>
>
>
>
>


Odpovedá: Pavel Poles

6. 4. 2004 11:54


> Zajimalo by me, jestli to muze byt zpusobeno nekompatibilitou IBX vuci
> FireBird 1.5. Nebo kde by mohla byt chyba.

Musis vypnout u IBQuery CheckParams, nebo tak nejak se to jmenuje,
pokud je to true, tak se snazi slova v SQL zacinajici dvojteckou nahradit
z kolekce Params.

Pavel Poles

Odpovedá: Karel Rys

6. 4. 2004 12:35

Pavel Karban dne 6 Apr 2004 v 11:07:

> into
> :ID
> do
> suspend;
> end^
> --- padne na radku zacinajici :ID, chyba neznamy token

Ahoj,

u te IbQuery nebo cim to spoustis se bude muset nastavit ParamCheck:=false;

Snad je to tim.

Karel Rys


Odpovedá: Lstiburek Pavel

6. 4. 2004 12:56

Jmeno tabulky nebo sloupce nemuze byt parametrem dotazu.

Pavel

> From: Karel Rys [mailto:delphi@zas-me.cz]
> Pavel Karban dne 6 Apr 2004 v 11:07:
>
> > into
> > :ID
> > do
> > suspend;
> > end^
> > --- padne na radku zacinajici :ID, chyba neznamy token
>
> u te IbQuery nebo cim to spoustis se bude muset nastavit
> ParamCheck:=false;
>
> Snad je to tim.

Odpovedá: Jaroslav Uher

6. 4. 2004 13:50

On 6 Apr 2004 at 11:55, Pavel Karban wrote:

> Dotazy poustim postupne, v tom problem neni. TIBScript nikde nevidim,
> ani v helpu na nej neni odkaz.

nepises jake mas Delphi.
U D5 a D6 potrebujes INTERBASE EXPRESS Xtras kit

potom nepotrebujes zadne parsovani a staci pouze:

IBScript1.Script := SynEdit.Lines;
Screen.Cursor := crHourGlass;
try
  IBScript1.ExecuteScript;
finally
   Screen.Cursor := crDefault;
end;

Jarek Uher


Odpovedá: Jan Rizek

7. 4. 2004 10:57

Musite si nainstalkovat IBX 6.04 mate asi verzi 6.02 - nejspis

v 6.04 uz IBScript je -

download najdete na Borland.com - hledejte IBX 6.04 nebo napiste - poslu vam
to  

Pokud ovsem pouzivate D6 - jinak neposlouzim..

JR